using System;

namespace org.opencube.oms {

	internal class RelationInfo : OmsNode {

		private string m_targetElementId;
		private string m_sourceElementId;
		private string m_complexAttributeId;
		private string m_complexAttributeName;
		private bool m_isComposition;
		private string m_key;
		private string m_siblingOrder;

		internal RelationInfo( string targetElmentId, string sourceElementId, string complexAttributeName, string complexAttributeId, string id,
			string key, bool isComposition, string siblingOrder, DateTime creatingDate, string createrId, DateTime modifyingDate, string modifierId ):
		base( id, complexAttributeName, creatingDate, createrId, modifyingDate, modifierId ){
			this.m_targetElementId = targetElmentId;
			this.m_sourceElementId = sourceElementId;
			this.m_complexAttributeId = complexAttributeId;
			this.m_complexAttributeName = complexAttributeName;
			this.m_isComposition = isComposition;
			this.m_key = key;
			this.m_siblingOrder = siblingOrder;
		}//RelationInfo

		internal string ComplexAttributeId {
			get {
				return this.m_complexAttributeId;
			}
		}//ComplexAttributeId

		internal string Key {
			get {
				return this.m_key;
			}
		}//key

		internal string ComplexAttributeName {
			get {
				return this.m_complexAttributeName;
			}
			set {
				this.m_complexAttributeName = value;
			}
		}//ComplexAttributeName

		internal string SourceElementId {
			get {
				return this.m_sourceElementId;
			}
			set {
				this.m_sourceElementId = value;
			}
		}//SourceElementId

		internal string TargetElementId {
			get {
				return this.m_targetElementId;
			}
			set {
				this.m_targetElementId = value;
			}
		}//TargetElementId

		internal string SiblingOrder {
			get {
				return this.m_siblingOrder;
			}
		}//SiblingOrder

		internal bool IsComposition {
			get {
				return this.m_isComposition;
			}
		}//IsComposition

	}//end RelationInfo
}//end org.opencube.oms
